@Allure
2年前 提问
1个回答
数据库安全审计怎么设置
Ann
2年前
以下是以mysql数据库和BinLog方法进行数据库安全审计,配置和验证过程如下:
创建审计用的数据库和表(这里是测试所以自建数据库和表);
创建具有操作auditdb数据权限的用户,如果已经有用户,需要对现有用户添加操作auditdb的权限;
设置init_connect,并重启MySQL数据库在初始化参数文件[mysql]部分添加如下内容;
<pre style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; font-size: inherit; color: inherit; line-height: inherit;"> 1log-bin=mysql-bin #开启Binlog 2init_connect='insert into auditdb.accesslog(connectionid, connectionuser,logintime) values(connection_id(),user(),now());' #设置初始化连接参数 </pre>
用user1用户登录,执行一些写入和删除的操作;
用mysqlbinlog工具查看BinLog:根据delete操作找到相应的ThreadId,而后在前面创建的审计日志表auditdb.accesslog里面根据ThreadID找到用户登录信息,从Binlog中可以得知这个删除操作是user1用户在本机执行的操作。